--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Commit e434e24b9b316c83ba98921332799db44c565b35
Parents : 6c1e15f
Author : Ivan <ivan@quad4.io>
Signature : Signature validation error
Date : 2026-04-23T14:28:11-05:00
feat(locales): add new translations for RNS restart and enhance backup descriptions across multiple languages
Changes
8 files changed, 526 insertions(+), 14 deletions(-)
Diff
diff --git a/meshchatx/src/frontend/locales/de.json b/meshchatx/src/frontend/locales/de.json
index 98d76085..7b4f1a2a 100644
--- a/meshchatx/src/frontend/locales/de.json
+++ b/meshchatx/src/frontend/locales/de.json
@@ -319,7 +319,8 @@
"telemetry_trust_failed": "Fehler beim Aktualisieren des Telemetrie-Vertrauens.",
"telemetry_trust_revoke": "Telemetrie-Vertrauen entziehen",
"telemetry_trust_grant": "Für Telemetrie vertrauen",
- "location_manage_desc": "Verwalten Sie, wie Ihr Standort geteilt wird."
+ "location_manage_desc": "Verwalten Sie, wie Ihr Standort geteilt wird.",
+ "restart_rns": "RNS neu starten"
},
"common": {
"open": "Öffnen",
@@ -765,7 +766,69 @@
"failed_acknowledge_integrity": "Bestätigung von Integritätsproblemen fehlgeschlagen",
"shutdown_sent": "Shutdown command sent to server.",
"identity_exported": "Identity key file exported",
- "identity_copied": "Identity Base32 key copied to clipboard"
+ "identity_copied": "Identity Base32 key copied to clipboard",
+ "app_name": "MeshChatX",
+ "automatic_backups_desc": "Automatische tägliche Sicherungen Ihrer Datenbank.",
+ "automatic_backups_title": "Automatische Backups",
+ "backup_download_failed": "Backup konnte nicht heruntergeladen werden",
+ "backup_downloaded": "Backup heruntergeladen",
+ "backend_stack": "Backend-Stack",
+ "chrome_runtime": "Chrome",
+ "contact_alternate": "Alternativadresse",
+ "contact_details": "Details",
+ "contact_developer": "Entwickler kontaktieren",
+ "contact_lxmf_address": "LXMF-Adresse",
+ "contact_propagation_hint": "An den Verbreitungsknoten senden, wenn Sie mich nicht direkt erreichen können.",
+ "copied_label_to_clipboard": "{label} in die Zwischenablage kopiert",
+ "core_runtime": "Kernlaufzeit",
+ "creating": "Wird erstellt…",
+ "database_backups_desc": "Vollständige Sicherungen Ihrer Kommunikationsdatenbank.",
+ "database_backups_title": "Datenbank-Backups",
+ "database_health_maintenance": "Datenbankzustand und -wartung",
+ "dep_lxmf_subtitle": "Leichtgewichtiges erweiterbares Nachrichtenformat",
+ "dep_lxmfy_subtitle": "LXMF-Bot-Framework",
+ "dep_rns_subtitle": "Reticulum-Netzwerkstack",
+ "download_backup": "Backup herunterladen",
+ "downloading": "Wird heruntergeladen…",
+ "electron_runtime": "Electron",
+ "environment_information": "Umgebungsinformationen",
+ "env_backend_url": "Backend-URL",
+ "env_language": "Sprache",
+ "env_lxmf": "LXMF",
+ "env_platform": "Plattform",
+ "env_python": "Python",
+ "env_rns": "RNS",
+ "env_user_agent": "User-Agent",
+ "failed_to_copy_label": "Kopieren fehlgeschlagen: {label}",
+ "free_space": "Freier Speicher",
+ "identity_hash": "Identitäts-Hash",
+ "journal_short": "Journal",
+ "local_snapshots_desc": "Wiederherstellungspunkte zu einem Zeitpunkt auf der Festplatte anlegen.",
+ "local_snapshots_title": "Lokale Schnappschüsse",
+ "lxmf_address": "LXMF-Adresse",
+ "lxst_engine": "LXST-Engine",
+ "main_instance_badge": "Hauptinstanz",
+ "nodejs_runtime": "Node.js",
+ "page_count_label": "Seitenanzahl",
+ "pagination_page_of": "Seite {current} von {total}",
+ "path_unknown": "unbekannt",
+ "recovery": "Wiederherstellung",
+ "recovery_failed": "Wiederherstellung fehlgeschlagen",
+ "reveal_config_file": "Datei anzeigen",
+ "reveal_database_file": "DB anzeigen",
+ "reticulum_config": "Reticulum-Konfiguration",
+ "shared_instance_badge": "Gemeinsame Instanz: {address}",
+ "shutdown_confirm": "Möchten Sie die Anwendung wirklich beenden? Der Server wird gestoppt und die Anwendung geschlossen.",
+ "snapshot_create": "Erstellen",
+ "snapshot_download": "Herunterladen",
+ "snapshot_download_failed": "Schnappschuss konnte nicht heruntergeladen werden",
+ "snapshot_downloaded": "Schnappschuss heruntergeladen",
+ "snapshot_placeholder": "Schnappschuss-Bezeichnung…",
+ "snapshot_restore": "Wiederherstellen",
+ "tagline_after": ".",
+ "tagline_lead": "Eine sichere, widerstandsfähige Kommunikationsplattform auf Basis des ",
+ "tagline_link": "Reticulum Network Stack",
+ "technical_issues_detected": "Technische Probleme festgestellt"
},
"interfaces": {
"title": "Schnittstellen",
@@ -1160,6 +1223,7 @@
"react": "Reagieren",
"reaction_you": "Du",
"reaction_send_failed": "Reaktion konnte nicht gesendet werden",
+ "conversation_reaction_preview": "{name} reagierte mit {emoji}",
"message_not_found_in_cache": "Nachricht nicht im Cache gefunden"
},
"nomadnet": {
diff --git a/meshchatx/src/frontend/locales/en.json b/meshchatx/src/frontend/locales/en.json
index 7fc84c31..23b6a492 100644
--- a/meshchatx/src/frontend/locales/en.json
+++ b/meshchatx/src/frontend/locales/en.json
@@ -241,6 +241,7 @@
"reload_rns": "Reload RNS",
"reload_rns_description": "Deregister all destinations, stop the current RNS instance, and reload it. This is useful for applying configuration changes or restarting the mesh network stack without restarting the entire application.",
"reloading_rns": "Reloading RNS...",
+ "restart_rns": "Restart RNS",
"reloaded_rns": "Reticulum reloaded successfully",
"announce_interval": "Announce Interval",
"stop_sync_confirm": "Are you sure you want to stop syncing?",
@@ -696,6 +697,68 @@
"integrity_warning_footer": "Proceed with caution. If you did not manually update or modify these files, your installation may be compromised.",
"no_integrity_violations": "No integrity violations detected since last startup.",
"dependency_chain": "Dependency Chain",
+ "app_name": "MeshChatX",
+ "automatic_backups_desc": "Automated daily snapshots of your database.",
+ "automatic_backups_title": "Automatic Backups",
+ "backup_download_failed": "Failed to download backup",
+ "backup_downloaded": "Backup downloaded",
+ "backend_stack": "Backend Stack",
+ "chrome_runtime": "Chrome",
+ "contact_alternate": "Alternate",
+ "contact_details": "Details",
+ "contact_developer": "Contact Developer",
+ "contact_lxmf_address": "LXMF Address",
+ "contact_propagation_hint": "Send to propagation node if you cant reach me!",
+ "copied_label_to_clipboard": "{label} copied to clipboard",
+ "core_runtime": "Core Runtime",
+ "creating": "Creating...",
+ "database_backups_desc": "Full snapshots of your communications database.",
+ "database_backups_title": "Database Backups",
+ "database_health_maintenance": "Database Health & Maintenance",
+ "dep_lxmf_subtitle": "Lightweight Extensible Message Format",
+ "dep_lxmfy_subtitle": "LXMF Bot framework",
+ "dep_rns_subtitle": "Reticulum Network Stack",
+ "download_backup": "Download Backup",
+ "downloading": "Downloading...",
+ "electron_runtime": "Electron",
+ "environment_information": "Environment Information",
+ "env_backend_url": "Backend URL",
+ "env_language": "Language",
+ "env_lxmf": "LXMF",
+ "env_platform": "Platform",
+ "env_python": "Python",
+ "env_rns": "RNS",
+ "env_user_agent": "User Agent",
+ "failed_to_copy_label": "Failed to copy {label}",
+ "free_space": "Free Space",
+ "identity_hash": "Identity Hash",
+ "journal_short": "Journal",
+ "local_snapshots_desc": "Create point-in-time restore points on disk.",
+ "local_snapshots_title": "Local Snapshots",
+ "lxmf_address": "LXMF Address",
+ "lxst_engine": "LXST Engine",
+ "main_instance_badge": "Main Instance",
+ "nodejs_runtime": "Node.js",
+ "page_count_label": "Page Count",
+ "pagination_page_of": "Page {current} of {total}",
+ "path_unknown": "unknown",
+ "recovery": "Recovery",
+ "recovery_failed": "Recovery failed",
+ "reveal_config_file": "Reveal File",
+ "reveal_database_file": "Reveal DB",
+ "reticulum_config": "Reticulum Config",
+ "shared_instance_badge": "Shared Instance: {address}",
+ "shutdown_confirm": "Are you sure you want to shutdown the app? This will stop the server and close the application.",
+ "snapshot_create": "Create",
+ "snapshot_download": "Download",
+ "snapshot_download_failed": "Failed to download snapshot",
+ "snapshot_downloaded": "Snapshot downloaded",
+ "snapshot_placeholder": "Snapshot label...",
+ "snapshot_restore": "Restore",
+ "tagline_after": ".",
+ "tagline_lead": "A secure, resilient, and beautiful communications platform powered by the",
+ "tagline_link": "Reticulum Network Stack",
+ "technical_issues_detected": "Technical Issues Detected",
"other_core_components": "Other Core Components",
"backend_dependencies": "Backend Dependencies",
"delete_snapshot_confirm": "Are you sure you want to delete this snapshot?",
@@ -1108,6 +1171,7 @@
"react": "React",
"reaction_you": "You",
"reaction_send_failed": "Could not send reaction",
+ "conversation_reaction_preview": "{name} reacted {emoji}",
"message_not_found_in_cache": "Message not found in cache"
},
"settings": {
diff --git a/meshchatx/src/frontend/locales/es.json b/meshchatx/src/frontend/locales/es.json
index dfadef51..2b41d5d5 100644
--- a/meshchatx/src/frontend/locales/es.json
+++ b/meshchatx/src/frontend/locales/es.json
@@ -319,7 +319,8 @@
"telemetry_trust_failed": "Sin actualizar la confianza en la telemetría.",
"telemetry_trust_revoke": "Revoke Telemetry Trust",
"telemetry_trust_grant": "Trust for Telemetry",
- "location_manage_desc": "Administrar cómo se comparte su ubicación."
+ "location_manage_desc": "Administrar cómo se comparte su ubicación.",
+ "restart_rns": "Reiniciar RNS"
},
"common": {
"open": "Abierto",
@@ -713,7 +714,69 @@
"failed_acknowledge_integrity": "Falta de reconocimiento de cuestiones relativas a la integridad",
"shutdown_sent": "El comando Shutdown enviado al servidor.",
"identity_exported": "Archivo clave de identidad exportado",
- "identity_copied": "Base de identidad32 clave copiada para el portapapeles"
+ "identity_copied": "Base de identidad32 clave copiada para el portapapeles",
+ "app_name": "MeshChatX",
+ "automatic_backups_desc": "Copias de seguridad diarias automáticas de tu base de datos.",
+ "automatic_backups_title": "Copias automáticas",
+ "backup_download_failed": "No se pudo descargar la copia de seguridad",
+ "backup_downloaded": "Copia de seguridad descargada",
+ "backend_stack": "Pila del backend",
+ "chrome_runtime": "Chrome",
+ "contact_alternate": "Dirección alternativa",
+ "contact_details": "Detalles",
+ "contact_developer": "Contactar con el desarrollador",
+ "contact_lxmf_address": "Dirección LXMF",
+ "contact_propagation_hint": "Enviar al nodo de propagación si no puedes alcanzarme directamente.",
+ "copied_label_to_clipboard": "{label} copiado al portapapeles",
+ "core_runtime": "Motor principal",
+ "creating": "Creando…",
+ "database_backups_desc": "Copias completas de la base de datos de tus comunicaciones.",
+ "database_backups_title": "Copias de seguridad de la base de datos",
+ "database_health_maintenance": "Estado y mantenimiento de la base de datos",
+ "dep_lxmf_subtitle": "Formato de mensajes ligero y extensible",
+ "dep_lxmfy_subtitle": "Marco de bot LXMF",
+ "dep_rns_subtitle": "Pila de red Reticulum",
+ "download_backup": "Descargar copia de seguridad",
+ "downloading": "Descargando…",
+ "electron_runtime": "Electron",
+ "environment_information": "Información del entorno",
+ "env_backend_url": "URL del backend",
+ "env_language": "Idioma",
+ "env_lxmf": "LXMF",
+ "env_platform": "Plataforma",
+ "env_python": "Python",
+ "env_rns": "RNS",
+ "env_user_agent": "Agente de usuario",
+ "failed_to_copy_label": "No se pudo copiar: {label}",
+ "free_space": "Espacio libre",
+ "identity_hash": "Hash de identidad",
+ "journal_short": "Diario",
+ "local_snapshots_desc": "Crea puntos de restauración en disco en un momento concreto.",
+ "local_snapshots_title": "Instantáneas locales",
+ "lxmf_address": "Dirección LXMF",
+ "lxst_engine": "Motor LXST",
+ "main_instance_badge": "Instancia principal",
+ "nodejs_runtime": "Node.js",
+ "page_count_label": "Número de páginas",
+ "pagination_page_of": "Pág. {current} de {total}",
+ "path_unknown": "desconocido",
+ "recovery": "Recuperación",
+ "recovery_failed": "La recuperación falló",
+ "reveal_config_file": "Mostrar archivo",
+ "reveal_database_file": "Mostrar BD",
+ "reticulum_config": "Configuración de Reticulum",
+ "shared_instance_badge": "Instancia compartida: {address}",
+ "shutdown_confirm": "¿Seguro que quieres cerrar la aplicación? Se detendrá el servidor y se cerrará la aplicación.",
+ "snapshot_create": "Crear",
+ "snapshot_download": "Descargar",
+ "snapshot_download_failed": "No se pudo descargar la instantánea",
+ "snapshot_downloaded": "Instantánea descargada",
+ "snapshot_placeholder": "Etiqueta de la instantánea…",
+ "snapshot_restore": "Restaurar",
+ "tagline_after": ".",
+ "tagline_lead": "Una plataforma de comunicaciones segura y resistente basada en ",
+ "tagline_link": "Reticulum Network Stack",
+ "technical_issues_detected": "Problemas técnicos detectados"
},
"interfaces": {
"title": "Interfaces",
@@ -1108,6 +1171,7 @@
"react": "Reacción",
"reaction_you": "Tú.",
"reaction_send_failed": "No podría enviar reacción",
+ "conversation_reaction_preview": "{name} reaccionó con {emoji}",
"message_not_found_in_cache": "Mensaje no encontrado en caché"
},
"settings": {
diff --git a/meshchatx/src/frontend/locales/fr.json b/meshchatx/src/frontend/locales/fr.json
index 2951c9a6..bb21056a 100644
--- a/meshchatx/src/frontend/locales/fr.json
+++ b/meshchatx/src/frontend/locales/fr.json
@@ -319,7 +319,8 @@
"telemetry_trust_failed": "La confiance en télémétrie a échoué.",
"telemetry_trust_revoke": "Revoquer la confiance en télémétrie",
"telemetry_trust_grant": "Confiance pour la télémétrie",
- "location_manage_desc": "Gérez comment votre emplacement est partagé."
+ "location_manage_desc": "Gérez comment votre emplacement est partagé.",
+ "restart_rns": "Redémarrer RNS"
},
"common": {
"open": "Ouvrir",
@@ -713,7 +714,69 @@
"failed_acknowledge_integrity": "Défaut de reconnaître les problèmes d'intégrité",
"shutdown_sent": "Commande d'arrêt envoyée au serveur.",
"identity_exported": "Fichier clé d'identité exporté",
- "identity_copied": "Clé Identity Base32 copiée dans le presse-papiers"
+ "identity_copied": "Clé Identity Base32 copiée dans le presse-papiers",
+ "app_name": "MeshChatX",
+ "automatic_backups_desc": "Sauvegardes quotidiennes automatiques de votre base de données.",
+ "automatic_backups_title": "Sauvegardes automatiques",
+ "backup_download_failed": "Échec du téléchargement de la sauvegarde",
+ "backup_downloaded": "Sauvegarde téléchargée",
+ "backend_stack": "Pile logicielle du backend",
+ "chrome_runtime": "Chrome",
+ "contact_alternate": "Adresse alternative",
+ "contact_details": "Détails",
+ "contact_developer": "Contacter le développeur",
+ "contact_lxmf_address": "Adresse LXMF",
+ "contact_propagation_hint": "Envoyez au nœud de propagation si vous ne pouvez pas me joindre directement.",
+ "copied_label_to_clipboard": "{label} copié dans le presse-papiers",
+ "core_runtime": "Exécution principale",
+ "creating": "Création…",
+ "database_backups_desc": "Copies complètes de la base de données de vos communications.",
+ "database_backups_title": "Sauvegardes de la base de données",
+ "database_health_maintenance": "État et maintenance de la base de données",
+ "dep_lxmf_subtitle": "Format de messages léger et extensible",
+ "dep_lxmfy_subtitle": "Cadre de bot LXMF",
+ "dep_rns_subtitle": "Pile réseau Reticulum",
+ "download_backup": "Télécharger la sauvegarde",
+ "downloading": "Téléchargement…",
+ "electron_runtime": "Electron",
+ "environment_information": "Informations sur l'environnement",
+ "env_backend_url": "URL du backend",
+ "env_language": "Langue",
+ "env_lxmf": "LXMF",
+ "env_platform": "Plateforme",
+ "env_python": "Python",
+ "env_rns": "RNS",
+ "env_user_agent": "User-Agent",
+ "failed_to_copy_label": "Échec de la copie : {label}",
+ "free_space": "Espace libre",
+ "identity_hash": "Hachage d'identité",
+ "journal_short": "Journal",
+ "local_snapshots_desc": "Créez des points de restauration sur disque à un instant donné.",
+ "local_snapshots_title": "Instantanés locaux",
+ "lxmf_address": "Adresse LXMF",
+ "lxst_engine": "Moteur LXST",
+ "main_instance_badge": "Instance principale",
+ "nodejs_runtime": "Node.js",
+ "page_count_label": "Nombre de pages",
+ "pagination_page_of": "Page {current} sur {total}",
+ "path_unknown": "inconnu",
+ "recovery": "Récupération",
+ "recovery_failed": "Échec de la récupération",
+ "reveal_config_file": "Afficher le fichier",
+ "reveal_database_file": "Afficher la base",
+ "reticulum_config": "Configuration Reticulum",
+ "shared_instance_badge": "Instance partagée : {address}",
+ "shutdown_confirm": "Voulez-vous vraiment quitter l'application ? Le serveur s'arrêtera et l'application se fermera.",
+ "snapshot_create": "Créer",
+ "snapshot_download": "Télécharger",
+ "snapshot_download_failed": "Échec du téléchargement de l'instantané",
+ "snapshot_downloaded": "Instantané téléchargé",
+ "snapshot_placeholder": "Libellé de l'instantané…",
+ "snapshot_restore": "Restaurer",
+ "tagline_after": ".",
+ "tagline_lead": "Une plateforme de communication sécurisée et résiliente basée sur ",
+ "tagline_link": "Reticulum Network Stack",
+ "technical_issues_detected": "Problèmes techniques détectés"
},
"interfaces": {
"title": "Interfaces",
@@ -1108,6 +1171,7 @@
"react": "Réagir",
"reaction_you": "Toi",
"reaction_send_failed": "Impossible d'envoyer la réaction",
+ "conversation_reaction_preview": "{name} a réagi avec {emoji}",
"message_not_found_in_cache": "Message non trouvé dans cache"
},
"settings": {
diff --git a/meshchatx/src/frontend/locales/it.json b/meshchatx/src/frontend/locales/it.json
index c86c69a7..f19f71a7 100644
--- a/meshchatx/src/frontend/locales/it.json
+++ b/meshchatx/src/frontend/locales/it.json
@@ -319,7 +319,8 @@
"telemetry_trust_failed": "Impossibile aggiornare la fiducia telemetrica.",
"telemetry_trust_revoke": "Revoca Fiducia Telemetrica",
"telemetry_trust_grant": "Fidati per la Telemetria",
- "location_manage_desc": "Gestisci come viene condivisa la tua posizione."
+ "location_manage_desc": "Gestisci come viene condivisa la tua posizione.",
+ "restart_rns": "Riavvia RNS"
},
"common": {
"open": "Apri",
@@ -765,7 +766,69 @@
"failed_acknowledge_integrity": "Impossibile confermare i problemi di integrità",
"shutdown_sent": "Comando di spegnimento inviato al server.",
"identity_exported": "File chiave identità esportato",
- "identity_copied": "Chiave identità Base32 copiata negli appunti"
+ "identity_copied": "Chiave identità Base32 copiata negli appunti",
+ "app_name": "MeshChatX",
+ "automatic_backups_desc": "Snapshot giornalieri automatici del database.",
+ "automatic_backups_title": "Backup automatici",
+ "backup_download_failed": "Download del backup non riuscito",
+ "backup_downloaded": "Backup scaricato",
+ "backend_stack": "Stack backend",
+ "chrome_runtime": "Chrome",
+ "contact_alternate": "Indirizzo alternativo",
+ "contact_details": "Dettagli",
+ "contact_developer": "Contatta lo sviluppatore",
+ "contact_lxmf_address": "Indirizzo LXMF",
+ "contact_propagation_hint": "Invia al nodo di propagazione se non riesci a raggiungermi direttamente.",
+ "copied_label_to_clipboard": "{label} copiato negli appunti",
+ "core_runtime": "Runtime principale",
+ "creating": "Creazione in corso…",
+ "database_backups_desc": "Snapshot completi del database delle comunicazioni.",
+ "database_backups_title": "Backup database",
+ "database_health_maintenance": "Stato e manutenzione database",
+ "dep_lxmf_subtitle": "Formato messaggi leggero ed estensibile",
+ "dep_lxmfy_subtitle": "Framework bot LXMF",
+ "dep_rns_subtitle": "Stack di rete Reticulum",
+ "download_backup": "Scarica backup",
+ "downloading": "Download in corso…",
+ "electron_runtime": "Electron",
+ "environment_information": "Informazioni ambiente",
+ "env_backend_url": "URL backend",
+ "env_language": "Lingua",
+ "env_lxmf": "LXMF",
+ "env_platform": "Piattaforma",
+ "env_python": "Python",
+ "env_rns": "RNS",
+ "env_user_agent": "User agent",
+ "failed_to_copy_label": "Copia non riuscita: {label}",
+ "free_space": "Spazio libero",
+ "identity_hash": "Hash identità",
+ "journal_short": "Journal",
+ "local_snapshots_desc": "Crea punti di ripristino su disco in un dato momento.",
+ "local_snapshots_title": "Snapshot locali",
+ "lxmf_address": "Indirizzo LXMF",
+ "lxst_engine": "Motore LXST",
+ "main_instance_badge": "Istanza principale",
+ "nodejs_runtime": "Node.js",
+ "page_count_label": "Conteggio pagine",
+ "pagination_page_of": "Pag. {current} di {total}",
+ "path_unknown": "sconosciuto",
+ "recovery": "Ripristino",
+ "recovery_failed": "Ripristino non riuscito",
+ "reveal_config_file": "Mostra file",
+ "reveal_database_file": "Mostra DB",
+ "reticulum_config": "Configurazione Reticulum",
+ "shared_instance_badge": "Istanza condivisa: {address}",
+ "shutdown_confirm": "Chiudere l'applicazione? Il server verrà arrestato e l'applicazione si chiuderà.",
+ "snapshot_create": "Crea",
+ "snapshot_download": "Scarica",
+ "snapshot_download_failed": "Download snapshot non riuscito",
+ "snapshot_downloaded": "Snapshot scaricato",
+ "snapshot_placeholder": "Etichetta snapshot…",
+ "snapshot_restore": "Ripristina",
+ "tagline_after": ".",
+ "tagline_lead": "Piattaforma di comunicazione sicura e resiliente basata su ",
+ "tagline_link": "Reticulum Network Stack",
+ "technical_issues_detected": "Rilevati problemi tecnici"
},
"interfaces": {
"title": "Interfacce",
@@ -1160,6 +1223,7 @@
"react": "Reagisci",
"reaction_you": "Tu",
"reaction_send_failed": "Impossibile inviare la reazione",
+ "conversation_reaction_preview": "{name} ha reagito con {emoji}",
"message_not_found_in_cache": "Messaggio non trovato nella cache"
},
"settings": {
diff --git a/meshchatx/src/frontend/locales/nl.json b/meshchatx/src/frontend/locales/nl.json
index 256d1ece..e8bde661 100644
--- a/meshchatx/src/frontend/locales/nl.json
+++ b/meshchatx/src/frontend/locales/nl.json
@@ -319,7 +319,8 @@
"telemetry_trust_failed": "Kon telemetrie vertrouwen niet bijwerken.",
"telemetry_trust_revoke": "Revoce Telemetrie Trust",
"telemetry_trust_grant": "Vertrouwen voor telemetrie",
- "location_manage_desc": "Beheer hoe uw locatie wordt gedeeld."
+ "location_manage_desc": "Beheer hoe uw locatie wordt gedeeld.",
+ "restart_rns": "RNS herstarten"
},
"common": {
"open": "Open",
@@ -713,7 +714,69 @@
"failed_acknowledge_integrity": "Kon integriteitsproblemen niet erkennen",
"shutdown_sent": "Afsluitopdracht verzonden naar de server.",
"identity_exported": "Identiteitssleutelbestand geëxporteerd",
- "identity_copied": "Identiteitsbasis32 sleutel gekopieerd naar klembord"
+ "identity_copied": "Identiteitsbasis32 sleutel gekopieerd naar klembord",
+ "app_name": "MeshChatX",
+ "automatic_backups_desc": "Automatische dagelijkse snapshots van je database.",
+ "automatic_backups_title": "Automatische back-ups",
+ "backup_download_failed": "Back-up downloaden mislukt",
+ "backup_downloaded": "Back-up gedownload",
+ "backend_stack": "Backend-stack",
+ "chrome_runtime": "Chrome",
+ "contact_alternate": "Alternatief adres",
+ "contact_details": "Details",
+ "contact_developer": "Ontwikkelaar contacteren",
+ "contact_lxmf_address": "LXMF-adres",
+ "contact_propagation_hint": "Stuur naar het propagatieknooppunt als je me niet direct kunt bereiken.",
+ "copied_label_to_clipboard": "{label} naar klembord gekopieerd",
+ "core_runtime": "Kernruntime",
+ "creating": "Bezig met maken…",
+ "database_backups_desc": "Volledige snapshots van je communicatiedatabase.",
+ "database_backups_title": "Databaseback-ups",
+ "database_health_maintenance": "Databasestatus en -onderhoud",
+ "dep_lxmf_subtitle": "Lichtgewicht uitbreidbaar berichtenformaat",
+ "dep_lxmfy_subtitle": "LXMF-botframework",
+ "dep_rns_subtitle": "Reticulum-netwerkstack",
+ "download_backup": "Back-up downloaden",
+ "downloading": "Bezig met downloaden…",
+ "electron_runtime": "Electron",
+ "environment_information": "Omgevingsinformatie",
+ "env_backend_url": "Backend-URL",
+ "env_language": "Taal",
+ "env_lxmf": "LXMF",
+ "env_platform": "Platform",
+ "env_python": "Python",
+ "env_rns": "RNS",
+ "env_user_agent": "User-agent",
+ "failed_to_copy_label": "Kopiëren mislukt: {label}",
+ "free_space": "Vrije ruimte",
+ "identity_hash": "Identiteitshash",
+ "journal_short": "Journal",
+ "local_snapshots_desc": "Maak herstelpunten op schijf op een gekozen tijdstip.",
+ "local_snapshots_title": "Lokale snapshots",
+ "lxmf_address": "LXMF-adres",
+ "lxst_engine": "LXST-engine",
+ "main_instance_badge": "Hoofdinstantie",
+ "nodejs_runtime": "Node.js",
+ "page_count_label": "Pagina's",
+ "pagination_page_of": "Pagina {current} van {total}",
+ "path_unknown": "onbekend",
+ "recovery": "Herstel",
+ "recovery_failed": "Herstel mislukt",
+ "reveal_config_file": "Bestand tonen",
+ "reveal_database_file": "DB tonen",
+ "reticulum_config": "Reticulum-configuratie",
+ "shared_instance_badge": "Gedeelde instantie: {address}",
+ "shutdown_confirm": "Weet je zeker dat je de app wilt afsluiten? De server stopt en de app sluit.",
+ "snapshot_create": "Maken",
+ "snapshot_download": "Downloaden",
+ "snapshot_download_failed": "Snapshot downloaden mislukt",
+ "snapshot_downloaded": "Snapshot gedownload",
+ "snapshot_placeholder": "Snapshotlabel…",
+ "snapshot_restore": "Herstellen",
+ "tagline_after": ".",
+ "tagline_lead": "Een veilige, veerkrachtige communicatieplatform gebaseerd op ",
+ "tagline_link": "Reticulum Network Stack",
+ "technical_issues_detected": "Technische problemen gedetecteerd"
},
"interfaces": {
"title": "Interfaces",
@@ -1108,6 +1171,7 @@
"react": "Reageren",
"reaction_you": "Jij",
"reaction_send_failed": "Kon reactie niet versturen",
+ "conversation_reaction_preview": "{name} reageerde met {emoji}",
"message_not_found_in_cache": "Bericht niet gevonden in cache"
},
"settings": {
diff --git a/meshchatx/src/frontend/locales/ru.json b/meshchatx/src/frontend/locales/ru.json
index 0263fb58..8641399e 100644
--- a/meshchatx/src/frontend/locales/ru.json
+++ b/meshchatx/src/frontend/locales/ru.json
@@ -319,7 +319,8 @@
"telemetry_trust_failed": "Не удалось обновить доверие телеметрии.",
"telemetry_trust_revoke": "Отозвать доверие телеметрии",
"telemetry_trust_grant": "Доверять телеметрии",
- "location_manage_desc": "Управление тем, как передается ваше местоположение."
+ "location_manage_desc": "Управление тем, как передается ваше местоположение.",
+ "restart_rns": "Перезапуск RNS"
},
"common": {
"open": "Открыть",
@@ -765,7 +766,69 @@
"failed_acknowledge_integrity": "Failed to acknowledge integrity issues",
"shutdown_sent": "Shutdown command sent to server.",
"identity_exported": "Identity key file exported",
- "identity_copied": "Identity Base32 key copied to clipboard"
+ "identity_copied": "Identity Base32 key copied to clipboard",
+ "app_name": "MeshChatX",
+ "automatic_backups_desc": "Автоматические ежедневные снимки вашей базы данных.",
+ "automatic_backups_title": "Автоматические резервные копии",
+ "backup_download_failed": "Не удалось скачать резервную копию",
+ "backup_downloaded": "Резервная копия скачана",
+ "backend_stack": "Стек бэкенда",
+ "chrome_runtime": "Chrome",
+ "contact_alternate": "Альтернативный адрес",
+ "contact_details": "Подробности",
+ "contact_developer": "Связаться с разработчиком",
+ "contact_lxmf_address": "Адрес LXMF",
+ "contact_propagation_hint": "Отправьте на узел распространения, если не удаётся связаться со мной напрямую.",
+ "copied_label_to_clipboard": "{label} скопировано в буфер обмена",
+ "core_runtime": "Основная среда выполнения",
+ "creating": "Создание…",
+ "database_backups_desc": "Полные снимки базы данных ваших сообщений.",
+ "database_backups_title": "Резервные копии базы данных",
+ "database_health_maintenance": "Состояние и обслуживание базы данных",
+ "dep_lxmf_subtitle": "Лёгкий расширяемый формат сообщений",
+ "dep_lxmfy_subtitle": "Фреймворк LXMF-бота",
+ "dep_rns_subtitle": "Сетевой стек Reticulum",
+ "download_backup": "Скачать резервную копию",
+ "downloading": "Скачивание…",
+ "electron_runtime": "Electron",
+ "environment_information": "Информация о среде",
+ "env_backend_url": "URL бэкенда",
+ "env_language": "Язык",
+ "env_lxmf": "LXMF",
+ "env_platform": "Платформа",
+ "env_python": "Python",
+ "env_rns": "RNS",
+ "env_user_agent": "User Agent",
+ "failed_to_copy_label": "Не удалось скопировать: {label}",
+ "free_space": "Свободно",
+ "identity_hash": "Хэш личности",
+ "journal_short": "Журнал",
+ "local_snapshots_desc": "Создавайте снимки на диске в выбранный момент времени.",
+ "local_snapshots_title": "Локальные снимки",
+ "lxmf_address": "Адрес LXMF",
+ "lxst_engine": "Движок LXST",
+ "main_instance_badge": "Основной экземпляр",
+ "nodejs_runtime": "Node.js",
+ "page_count_label": "Число страниц",
+ "pagination_page_of": "Стр. {current} из {total}",
+ "path_unknown": "неизвестно",
+ "recovery": "Восстановление",
+ "recovery_failed": "Восстановление не удалось",
+ "reveal_config_file": "Показать файл",
+ "reveal_database_file": "Показать БД",
+ "reticulum_config": "Конфигурация Reticulum",
+ "shared_instance_badge": "Общий экземпляр: {address}",
+ "shutdown_confirm": "Вы действительно хотите выключить приложение? Сервер будет остановлен и приложение закроется.",
+ "snapshot_create": "Создать",
+ "snapshot_download": "Скачать",
+ "snapshot_download_failed": "Не удалось скачать снимок",
+ "snapshot_downloaded": "Снимок скачан",
+ "snapshot_placeholder": "Метка снимка…",
+ "snapshot_restore": "Восстановить",
+ "tagline_after": ".",
+ "tagline_lead": "Надёжная отказоустойчивая платформа связи на базе ",
+ "tagline_link": "Reticulum Network Stack",
+ "technical_issues_detected": "Обнаружены технические проблемы"
},
"interfaces": {
"title": "Интерфейсы",
@@ -1160,6 +1223,7 @@
"react": "Реакции",
"reaction_you": "Вы",
"reaction_send_failed": "Не удалось отправить реакцию",
+ "conversation_reaction_preview": "{name} отреагировал(а) {emoji}",
"message_not_found_in_cache": "Сообщение не найдено в кэше"
},
"nomadnet": {
diff --git a/meshchatx/src/frontend/locales/zh.json b/meshchatx/src/frontend/locales/zh.json
index 90ad4c05..32034133 100644
--- a/meshchatx/src/frontend/locales/zh.json
+++ b/meshchatx/src/frontend/locales/zh.json
@@ -319,7 +319,8 @@
"telemetry_trust_failed": "更新遥测信任失败。",
"telemetry_trust_revoke": "撤销遥测信任",
"telemetry_trust_grant": "授予遥测信任",
- "location_manage_desc": "管理您的位置共享方式。"
+ "location_manage_desc": "管理您的位置共享方式。",
+ "restart_rns": "重启 RNS"
},
"common": {
"open": "打开",
@@ -713,7 +714,69 @@
"failed_acknowledge_integrity": "无法确认完整性问题",
"shutdown_sent": "关闭命令已发送到服务器。",
"identity_exported": "身份密钥文件已导出",
- "identity_copied": "身份 Base32 密钥已复制到剪贴板"
+ "identity_copied": "身份 Base32 密钥已复制到剪贴板",
+ "app_name": "MeshChatX",
+ "automatic_backups_desc": "数据库的每日自动快照。",
+ "automatic_backups_title": "自动备份",
+ "backup_download_failed": "备份下载失败",
+ "backup_downloaded": "备份已下载",
+ "backend_stack": "后端技术栈",
+ "chrome_runtime": "Chrome",
+ "contact_alternate": "备用地址",
+ "contact_details": "详情",
+ "contact_developer": "联系开发者",
+ "contact_lxmf_address": "LXMF 地址",
+ "contact_propagation_hint": "若无法直接联系我,请发送至传播节点。",
+ "copied_label_to_clipboard": "{label} 已复制到剪贴板",
+ "core_runtime": "核心运行时",
+ "creating": "正在创建…",
+ "database_backups_desc": "通信数据库的完整快照。",
+ "database_backups_title": "数据库备份",
+ "database_health_maintenance": "数据库健康与维护",
+ "dep_lxmf_subtitle": "轻量级可扩展消息格式",
+ "dep_lxmfy_subtitle": "LXMF 机器人框架",
+ "dep_rns_subtitle": "Reticulum 网络栈",
+ "download_backup": "下载备份",
+ "downloading": "正在下载…",
+ "electron_runtime": "Electron",
+ "environment_information": "环境信息",
+ "env_backend_url": "后端 URL",
+ "env_language": "语言",
+ "env_lxmf": "LXMF",
+ "env_platform": "平台",
+ "env_python": "Python",
+ "env_rns": "RNS",
+ "env_user_agent": "User Agent",
+ "failed_to_copy_label": "复制失败:{label}",
+ "free_space": "可用空间",
+ "identity_hash": "身份哈希",
+ "journal_short": "日志",
+ "local_snapshots_desc": "在磁盘上创建指定时间点的还原点。",
+ "local_snapshots_title": "本地快照",
+ "lxmf_address": "LXMF 地址",
+ "lxst_engine": "LXST 引擎",
+ "main_instance_badge": "主实例",
+ "nodejs_runtime": "Node.js",
+ "page_count_label": "页数",
+ "pagination_page_of": "第 {current} 页,共 {total} 页",
+ "path_unknown": "未知",
+ "recovery": "恢复",
+ "recovery_failed": "恢复失败",
+ "reveal_config_file": "在文件夹中显示",
+ "reveal_database_file": "显示数据库",
+ "reticulum_config": "Reticulum 配置",
+ "shared_instance_badge": "共享实例:{address}",
+ "shutdown_confirm": "确定要关闭应用吗?服务器将停止运行,应用将退出。",
+ "snapshot_create": "创建",
+ "snapshot_download": "下载",
+ "snapshot_download_failed": "快照下载失败",
+ "snapshot_downloaded": "快照已下载",
+ "snapshot_placeholder": "快照标签…",
+ "snapshot_restore": "还原",
+ "tagline_after": "。",
+ "tagline_lead": "安全、有韧性的通信平台,基于 ",
+ "tagline_link": "Reticulum Network Stack",
+ "technical_issues_detected": "检测到技术问题"
},
"interfaces": {
"title": "接口",
@@ -1108,6 +1171,7 @@
"react": "反应",
"reaction_you": "您",
"reaction_send_failed": "无法发送反应",
+ "conversation_reaction_preview": "{name} 回应了 {emoji}",
"message_not_found_in_cache": "缓存中未找到消息"
},
"settings": {
──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────